23

» WarCraft 3 / Анимация

Похожие вопросы:

ответ
Лучший вариант будет это отдельная модель вихря(такие есть даже разных цветов) и триггерное воспроизведение анимации ( если конечно такая есть у юнита).Крепить на героя эффект и наносить урон всем вокруг или через движение дамика- вихря за героем, сам герой не будет крутиться,
Анимации вращения героя есть только у мастера и грома задиры.
триггерное воспроизведение:
call SetUnitAnimation(caster,"Attack Walk Stand Spin")
ответ
юниту, в которого происходит морф нужно добавить как на скрине
ответ
Хорошо, решил проблему предварительным IssueImmediateOrder( whichUnit, "stop" )
ответ
8gabriel8:
Вроде ему наоборот надо Spell Throw -> Attack.
с Attack на Spell Throw

zetreisu, открываете модель в mdlvis жмакаете F3, выбераете нужную анимацию, переименовываете, жмакаете Enter и сохраняете модель при выходе.
ответ
XGM Bot:
Похожие вопросы:

ответ
Подскажу - пересаживать анимации вручную в блокноте
ответ
Реализовать триггерно. Если это не очевидно - значит твои навыки не позволяют сделать этого. Однако спелл простой - поищи где-нибудь в заклинаниях на заказ или на хайве.
ответ
Их очень много, зависит от типа модели-здание, скилл или юнит. www.hiveworkshop.com/threads/villager-255-animations.192204
Это пример анимации юнита для тебя. Может найдешь это полезным=)
ответ
vlad2010pilot, ну это порядковый номер анимации в контейнере.
native SetUnitAnimationByIndex takes unit whichUnit, integer whichAnimation returns nothing
Только этой функцией у вас получится проиграть эти 50 анимаций.
ответ
1,2 - это вариации одного и того же состояния, а First, Second, Alternate, Gold и прочие - альтернативы, работающие только с использованием данного тега, причем они также могут иметь свои вариации 1,2 и тд.


23

» WarCraft 3 / Нестандартный размер карты ?!

Похожие вопросы:

ответ
от того что ты создал нестандартное, почти не имеет веса, вес зависит от количества кода(1 буква гдет 1-2 бит, а в байте 8 бит, а в килобайте 1024 байт) и от объектов созданных на карте(декор эффекты юниты области и тд сколько они весят хз но по моему где то 500-1000 байт) (код в гуй объёмен, содержит лишние проверки if и ненужные вызовы "Функции В Функции")
при загрузки карты она имеет свой стандартный вес(код+импорт+объекты на карте), но в процессе игры могут создаваться новые объекты и тп из за чего карта может лагать у кого слабый комп(он тупо не может обрабатывать всю инфу)
Гигамон, возможно в 1 карте ты удалил триг инициализации а в другой нет(стандартный триггер инициализации весь уж точно состоит из 20-30 БЖ функций, которые вызывают другие... я проверял)
ответ
слк оптимизаторы + тула векса
короче поиск по запросу оптимизатор
ответ
попробуй поднять бывшую впадину
если я прав то она вновь станет глубокой впадиной
ответ
Скачай и максимальный размер карты в этой программе будет 480*480. xgm.guru/p/wc3/jassnewgenpack-r
ответ

23

» WarCraft 3 / Название анимаций

Похожие вопросы:

ответ
Подскажу - пересаживать анимации вручную в блокноте
ответ
Реализовать триггерно. Если это не очевидно - значит твои навыки не позволяют сделать этого. Однако спелл простой - поищи где-нибудь в заклинаниях на заказ или на хайве.
ответ
Их очень много, зависит от типа модели-здание, скилл или юнит. www.hiveworkshop.com/threads/villager-255-animations.192204
Это пример анимации юнита для тебя. Может найдешь это полезным=)
ответ
vlad2010pilot, ну это порядковый номер анимации в контейнере.
native SetUnitAnimationByIndex takes unit whichUnit, integer whichAnimation returns nothing
Только этой функцией у вас получится проиграть эти 50 анимаций.
ответ
1,2 - это вариации одного и того же состояния, а First, Second, Alternate, Gold и прочие - альтернативы, работающие только с использованием данного тега, причем они также могут иметь свои вариации 1,2 и тд.

23

» WarCraft 3 / Запретить атаковать

Похожие вопросы:

ответ
awesomesk1ll:
NickIAm:
NickIAm:
Странно.. Не работает с декорацией...
Сделай Triggering unit заместо Attacking unit
Главное чтоб условия соблюдались, тогда всё работает.
По такому же принципу делается запрет атаки по союзникам. Можно сделать проверку на процент хп. Что бы нельзя было бить только если у него 50% хп или меньше, если больше то можно.
С юнитами всё работает. Не надо мудрить с процентами. А вдруг крит?
ответ
Событие: юнит атакован
Дальше, проверять путь что между атакованным и атакующим является проходимым.
если пусть содержит непроходимости:
Приказать атакующему юниту "Отмена"
ответ
меняй acquire range триггерно, и дальность атаки не будет сбрасываться
ответ
второй триггер
на орудийные расчеты работает, вместе с первым
ответ
пеон, других вариантов нет

23

» WarCraft 3 / Ошибка в mdlvis...

Похожие вопросы:

ответ
Тут по-моему всё очевидно. Чадо пытается открыть в мдлвисе модель в формате m2, чего мдлвис не делает ещё с выхода burning crusade.
ответ
Тогда можно его поправить через редактор текстур mdlvis, ему пофигу. Просто заменить проблемный путь на корректный.
ответ
напиши создателю mdlvis
если найдёшь его а также у него будут исходники и желание фиксить баги то мб пофиксит
но скорее всего как минимум 2 и 3 пунктов будут отсутствовать
ответ
XGM Bot:
Похожие вопросы:

ответ
советую переименовать модель\заребутить комп
текстуры стандартные юзал, я так понимаю

ответ
Модель не для варкрафта, ваш кэп

23

» WarCraft 3 / Проблема с моделью

Похожие вопросы:

ответ
Настройки нужно немного другие, наземные, враги, организмы, нейтральные. Там далеко не так как написано работает фильтр, некоторые критерии работают только совместно. Где то даже была статья как делать такие настройки, чтобы работало только на нужные цели.
ответ
~8gabriel8:
Запускать кампанию надо из игры, а не редактора, иначе данные кампании не загружаются. И не сохраняй картинки для Интернета в формате *.bmp, используй *.jpg, либо *.png.
ответ
Если вам нужно, что никто не управлял крипами, то тогда либо даёте их игроку без слота, либо пустому слоту, который был отведён для человека.
ответ
Да ну нафиг,или я не правилно говорю или меня не правильно понимают
Думаю, два в одном.

23

» WarCraft 3 / Как добавить способности оглушение

Похожие вопросы:

ответ
Убери Wait во 2 триггере, во-первых.
В 1 триггере поставь действие TurnOn (включить) триггер 2 (на втором триггере нажми правой кнопкой и выбери изначально включён. У тебя вроде как действие Run, я так понимаю, просто у меня на англ WE.
Во втором триггере поставь событие Время Pereodic 0.02 сек.
Сделай условие, если в точке твоего двигаемого юнита тип проходимости Ходьба, то: дальше выключает этот триггер и делаешь другие свои действия, ьам звук добавляешь и т.д.
А вообще, судя по скринам твоих триггеров, ты ещё очень далёк от создания даже триггерных способностей.
Советую, лучше изучи какие бывают События, Действия и Условия, и что они делают.
Мышкоблудка:
Такие сложные вещи лучше наверно на jass делать, хоть это сложнее будет
Ты, конечно, колоссально помог в вопросе, но я открою тебе секрет: ничего тут сложного, на ГУИ изи делается, как и большинство других скилов.

23

» WarCraft 3 / IF проверка

Похожие вопросы:

ответ
ApoloZ2, то что нужно?
ответ
Правильный ответ ДА и он здесь xgm.guru/p/renderedge/memoryhack?postid=408475#comment190
ответ
MKDimon, здесь вообще не надо проверять в локал плеере и синхронизировать
я конкретно про то, когда ты проверяешь наличие файла
globals
bolean IHaveConfig=false // булевае данные можно держать асинхронными
endfglobals

-твоя функция начало
if FileExists("config.ini") then
set IHaveConfig=true
else // это можно и не писать
set IHaveConfig=false // хотя он и так false
endif
-конец
И у каждого игрока переменная примет своё значение и это не вызовет никакого десинхрона, каждый игрок будет знать если ли у него конф или нет
Синхронизация нужна, если нужно чтобы игрока Красный, узнал о наличии конфига у игрока Синего
Синхронизировать нужно непостредственно ,то что считывает ReadString, я тебе писал функцию как строковый тип синхронить
синхронизатор целого переделай под стринг или ищи я писал ранее
function SyncInteger takes player p, integer val returns integer
if (GetLocalPlayer() == p) then
call StoreInteger(SyncCache, "", "", val)
endif
call TriggerSyncStart()
if (GetLocalPlayer() == p) then
call SyncStoredInteger(SyncCache, "", "")
endif
call TriggerSleepAction(2)// меньшнее значение вызывает десинх
call TriggerSyncReady()
return GetStoredInteger(SyncCache, "", "")
endfunction
а вообще там 131 патч завезли, в котором есть быстрый синх, а на луа скорее все свои плюшки, мб можно вернуться к прелоаду и не юзать мемхак

23

» WarCraft 3 / Музыки нет.

Похожие вопросы:

ответ
скачать нормальный вар?
или включить звук в настройках
ответ
Fraps, это просто утечка памяти
десинк вызывают действия происходящие локально (то есть на компьютере 1 игрока они произошли а на компьютере 2 они не происходят)
ответ
Name Legion, PlayMusic( "/myDir/myFile.mp3" )
проиграет файл myFile.mp3 из папки myDir

23

» WarCraft 3 / Вопрос по хэш-таблице.

Похожие вопросы:

ответ
Вам сюда, господин хороший. Там есть ответы, практически, на все ваши вопросы.
ответ
А еще лучше - скинуть ссыль на какую-нибудь статью со списком callчто-то там команд.
ответ
ClotPh, это локалка. Нет вообще никакой разницы как ты ее назовешь. Должен скопетанить ©, ибо опасаюсь что ирония Дока может быть не замечена.

23

» WarCraft 3 / Триггер на призыв

Похожие вопросы:

ответ
Событие каждые 1 сек времени
пауза triggering unit
^ Не имеет смысла, здесь нет triggering unit, исправляй, сообщи об изменениях или неизменениях.
У тя там чета про убийства ещё, но спрятать юнит проиграв анимацию смерти не означает его убийство и из группы он не удаляется, если состоит. Так что имей в виду.
ответ
Отлавливай событие "завершает подготовку боевой единицы", затем перемещай "Trained unit" в нужную область
ответ
nvc123:
GRESHNIK1, я хз как ты пробовал
у меня всё работает нормально
плавающий юнит не может быть создан на суше
у тебя же корабль скорее всего не является плавающим т.е. не является кораблём
Делал из корабля из компании. Просьба залить пример, чтобы понять что я делаю не так.

23

» WarCraft 3 / Настройка атаки

Похожие вопросы:

ответ
Точка начала атаки x\y\z - в настройках юнита, по дефолту у многих 0.00, нужно выставлять свои значения методом тыка и смотреть, откуда снаряд вылетел...
ответ
К сожалению способ не увенчался успехом, все проверил разумеется.
Может еще где-нибудь надо изменить информацию? только где.
ответ
1.интерфейс/монстры-возвращение охраны ставь на 10000
2.удаляешь игрока 12 чтобы в игре он незначился а монстров создаёшь для него уже в игре у них недолжна быть прикреплена точка ожидания
3.их надо заставлять переодически двигаться либо всех разом в пределе 5 сек,либо переберая поочерёдно в 0,1сек а если их очень много то 0,05сек
4.то что ты описываешь бывает при очень большом количестве мобов,вариант сделать норм систему где мобы не наваливались волнами на предыдущих адержались определённого кол на карте
ответ
~16GB:
0.06 время жизни слишком мало ставь хотя бы 0.3
ответ
ssbbssc, Очистил все реестры от варика их было 3 всех удалил, варик все удалил...
Установил чистый 1.26a 1 гб и запускаю и фигня также осталось невидно эффектов ничего... Думаю пора переустановить виндовс а то мусор много с нуля легче =)
Даже 2012 год так и не решили вопроса 0_О!

23

» WarCraft 3 / Триггер на ворота

Похожие вопросы:

ответ
Спасибо всем за ответы и пояснения! Закрываю флудильню :с
ответ
В РО у ворот поставить галочку Неуязвимый в списке принадлежности к целям

23

» WarCraft 3 / Как сделать морф героя в другого? [лучший способ]

Похожие вопросы:

ответ
если ты играл в карту GTA SAN ANDREAS RUS(www.epicwar.com/maps/231496), то можно было бы взять от туда систему. Карта открывается в редакторе и там используется морф в разные профы с помощью предметов

23

» WarCraft 3 / Редактор, Свойства игрока.

Похожие вопросы:

ответ
Ой, нашёл нужный триггер))))
Всем спасибо за внимание =)
ответ
ну тогда через запрет технологии +бд
то есть твой вариант только с бд
ответ
NekoriDes, ждать, пока редактор прогрузит все улучшения. Ну ты сам прикинь более 20 улчшений и у каждого более 50 лвлов. )
ответ
Всё,как-то само после перезагрузки норм стало
Спасибо всем за помощь
ответ
Свойства игрока - Кланы - Нестандартные кланы + Фикс. параметры игрока (ставим эти галочки и все будет работать).

23

» WarCraft 3 / Как выбрать цвет юнита?

Похожие вопросы:

ответ
обычного строителя выбрать нельзя
можно дать строителю способности постройки (игрушечная башня, игрушечный замок и т.д.)
и отлавливать их применение
тогда юнит применивший способность и есть строитель
либо пиши свою систему постройки с бд и проверками на возможность строительства
вот статья по бд
остальные статьи найдёшь там
думаю месяца за 2 ты сможешь выучить всё необходимое для написания системы
Mrachny, перед тем как чтото писать сначала проверь это и предоставь пруф

23

» WarCraft 3 / Таблица типов урона и атаки

Похожие вопросы:

ответ
VovkaShyt, будет, хоть 10 хоть 0,01 будет снижаться количеством брони, а эти параметры - снижение от типа брони, сила тьмы игнорирует тип брони, а вот атака героя не игнорирует тип защиты зданий, здания, вспомните как долго в мили картах ломаются здания.

23

» WarCraft 3 / Подсветка в JNGP

Похожие вопросы:

ответ
берёшь содержимое бж функций с сайта
и копируешь себе в блокнотик
по поводу русификации копайся в файлах джнгп
мб найдёшь где то файлик с именами
либо сноси свой вар нафиг и ставь англ верию
ответ
Можно обновить TESH и будет такой же.
ответ
Близрад да так вставили, шоб не ныли, что там нет вжасса. А подсветку синтаксиса они просто забыли, и им побарабану, если есть вжасс и это пока хватит ширпотребу, т.к. рефорж важнее.
Братиш, мой тебе совет - качай HiveWE для патчей 1.30 и выше.
ответ
Держите, с поддержкой любых патчей

23

» WarCraft 3 / Триггеры. Волны врагов.

Похожие вопросы:

ответ
Я сам разобрался с проблемой. Конечно тут две новые появились, но на них забью уже:
  1. ИИ не нравился герой, из-за него вообще никто не нанимался.
  2. ИИ посчитал, что улучшив главное здание, он лишается главного здания, а значит нужно его снова строить. То есть, например, улучшив ратушу до крепости, он считает, что ратуши больше нет и необходимо построить ещё одну. Потом он крепость улучшит до замка, посчитает, что разрушили крепость, улучшит до крепости ратушу№2, снова потеряет ратушу и построит уже третью.
ответ
Да сделай проще. Создай многоуровневую способность-пустышку. и когда отдаешь приказ атаковать в область, давай ему эту способность и с помощью неё отслеживай, какую область атаковать.
Например,
способность уровень 1, значит атаковать должен 1 область.
Уровень 2 - 2 область и т. д.
Не вижу смысла усложнять жизнь с хеш-таблицей.
Надеюсь понятно?) Отдал приказ, присвоил способность, после каста жди пару сек и в зависимости от уровня способности-пустышки отправляй в ту или иную область.

23

» WarCraft 3 / Уменьшение перезарядки

Похожие вопросы:

ответ
Если тебе нужна формула, то глянь вот тут:
ответ
TeX13, можно, сделано в доте для варкравта...
Способов реализации много, от 'ANeg' (способность механика, Enginering Upgrade, рус-Техника), которым можно свапать скиллы, до таймеров которые будут удалять способность у героя а потом вручать ему снова, таким образом скидывая кулдаун, ну и так же хак на пямять, с помощью которого можно менять кулдаун как захочется, щяс все кому не лень юзают эту наработку.

23

» WarCraft 3 / Юниты нейтралы не достигают цели

Похожие вопросы:

ответ
Работай с real (числа с запятой) вместо регионов, занеси в бд или проверяй условиями нужные координаты и выбирай.
Точка не будет утекать, если хранить одну точку в глобальной переменной и для мгновенных операций перемещать ее и использовать дальше по назначению.
  1. В шапку над триггерами вставляешь этот код:
function RegionInit takes nothing returns nothing
//17/11/2016
    set udg_GL = Location(0.0, 0.0)
    set udg_RegionNumber = GetRandomInt(1, 4) // выбрать количество регионов
    set udg_RegionX1 = GetRectMinX(udg_Region[udg_RegionNumber])
    set udg_RegionY1 = GetRectMinY(udg_Region[udg_RegionNumber])
    set udg_RegionX2 = GetRectMaxX(udg_Region[udg_RegionNumber])
    set udg_RegionY2 = GetRectMaxY(udg_Region[udg_RegionNumber])
endfunction

  1. Создаешь глобальные переменные типа:
    • точка с названием GL
    • регион массив с названием Region
    • целочисленная с названием RegionNumber - для хранения номера выбранного региона
    • реальное число с названиями RegionX1, RegionX2, RegionY1, RegionY1 - для хранения координат выбранного региона
После действий на картинке в инициализацию вставляешь кастом скрипт:
call RegionInit()

  1. Перед каждым созданием юнита вставляешь кастом скрипт:
call MoveLocation(udg_GL, GetRandomReal(udg_RegionX1, udg_RegionX2), GetRandomReal(udg_RegionY1, udg_RegionY2))
В окне действия с созданием юнита используешь свою переменную GL
ответ
Лови карту.
ответ
Steal nerves:
циклом (данного юнита от 1-6 слотов, на jass от нумерация слотов начинается так 0-5) пробегаешься по каждому слоту и проверяешь тип, кол-во зарядов. я на гуи что-то не нашел эту команду UnitItemInSlot
native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item
кол-во итемов
ищем в каждом слоте один и тот же тип предмета. Этот код считывает кол-во итемов занимаемые в слотах
local integer id = ''//id-предмета, забудь указать в кавычках ид
local integer i=0 //для цикла
local integer c=0 //кол-во предметов
local unit u = //нужно не забыть указать юнита
//внизу начинается цикл, его блок 
loop //начало цикла
    exitwhen i > 5 //условие выхода из цикла
    if GetItemTypeId(UnitItemInSlot(u,i)) == '' then //если тип в слоте равен ....
        set c = c + 1
    endif
    set i = i + 1
endloop //конец цикла
кол-во предметов данного типа с N зарядами
local integer id = '' //id-предмета, забудь указать в кавычках ид
local integer i=0 //для цикла
local integer c=0 //кол-во предметов
local unit u = //нужно не забыть указать юнита
loop
    exitwhen i > 5

    if GetItemTypeId(UnitItemInSlot(u,i)) == id or GetItemCharges(UnitItemInSlot(u,i)) == 5 then //если тип в слоте такой, и и у этого итема зарядов равно 5
        set c = c + 1
    endif
    set i = i + 1
endloop
set u = null
ответ
добавляешь обоих
блокируешь улучшенного при старте карты всем игрокам
лучший и простейший вариант
ответ
без мемхака - нет

23

» WarCraft 3 / Волны врагов

Похожие вопросы:

ответ
Стандартная карта близов Обелиск. попробуй, она хороша
ответ
Да сделай проще. Создай многоуровневую способность-пустышку. и когда отдаешь приказ атаковать в область, давай ему эту способность и с помощью неё отслеживай, какую область атаковать.
Например,
способность уровень 1, значит атаковать должен 1 область.
Уровень 2 - 2 область и т. д.
Не вижу смысла усложнять жизнь с хеш-таблицей.
Надеюсь понятно?) Отдал приказ, присвоил способность, после каста жди пару сек и в зависимости от уровня способности-пустышки отправляй в ту или иную область.
ответ
Мб "Дистанция получения приказа" в редакторе объектов поставить на 99999, и дать игроку-компу чьи мобы видимость на всю карту.
ответ
Был подобный вопрос, там есть карта: xgm.guru/p/wc3/199494.